package com.xebest.web.controller.export;

import com.xebest.util.XeVenColumnName;

import java.math.BigDecimal;

/**
 * 用于传输导出数据（待付款订单，订单查询，订单处理，
 * 异常订单处理，订单打印发货，订单发货列表使用）
 *
 * @author 赵盼飞
 */
public class XeVenOrderExportDTO {

    @XeVenColumnName("订单编号")
    private String orderId;

    @XeVenColumnName("下单时间")
    private String createDate;

    @XeVenColumnName("订单状态")
    private String orderStatus;

    @XeVenColumnName("订单来源")
    private String orderSource;

    @XeVenColumnName("订单来源方式")
    private String orderSourceType;

    @XeVenColumnName("订单所属商户")
    private String venName;

    @XeVenColumnName("打印批次")
    private String printBatch;

    @XeVenColumnName("客户账号")
    private String loginAccount;

    @XeVenColumnName("收货人")
    private String caConsignee;

    @XeVenColumnName("收货人手机")
    private String caPhone;

    @XeVenColumnName("收货店铺")
    private String caStoreName;

    @XeVenColumnName("收货地区")
    private String caArea;

    @XeVenColumnName("收货地址")
    private String caStreet;

    @XeVenColumnName("买家备注")
    private String orderRemark;

    @XeVenColumnName("促销类型")
    private String promotOrderType;

    @XeVenColumnName("配送方式")
    private String shipType;

    @XeVenColumnName("客户经理")
    private String salesmanName; //所属业务员手机号

    @XeVenColumnName("下单业务员")
    private String custMagName;

    @XeVenColumnName("采购备注")
    private String purchaseType;

    @XeVenColumnName("支付类型")
    private String payType;

    @XeVenColumnName("支付状态")
    private String payStatus;

    @XeVenColumnName("支付时间")
    private String payTime;

    @XeVenColumnName("订单金额")
    private BigDecimal totalAmount;

    @XeVenColumnName("商品总额")
    private BigDecimal goodsAmount;

    @XeVenColumnName("运费总额")
    private BigDecimal freAmount;

    @XeVenColumnName("优惠总额")
    private BigDecimal pmtAmount;

    @XeVenColumnName("应收金额")
    private BigDecimal payAbleAmount;

    @XeVenColumnName("实收金额")
    private BigDecimal proPayAmount;

    @XeVenColumnName("退款金额")
    private BigDecimal refundAmount;

    @XeVenColumnName("仓库名称")
    private String storeName;

    @XeVenColumnName("发货时间")
    private String sendTime;

    @XeVenColumnName("支付单号")
    private String payNumber;

    @XeVenColumnName("物流单号")
    private String logtsNumber;

    @XeVenColumnName("物流公司")
    private String logtsCompany;

    @XeVenColumnName("物流状态")
    private String logtsStatus;

    @XeVenColumnName("发货单打印状态")
    private String printStatus;

    private String caAreaId;
    private String salesmanPhone; //所属业务员手机号

    @XeVenColumnName("平台优惠券")
    private BigDecimal platPmtAmount;

    @XeVenColumnName("店铺优惠券")
    private BigDecimal cpnsPmtAomount;

    @XeVenColumnName("撮合优惠")
    private BigDecimal specialDisamount;

    @XeVenColumnName("差异金额")
    private BigDecimal sfRefundAmount;
    private BigDecimal differenceAmount;


    public BigDecimal getDifferenceAmount() {
        return differenceAmount;
    }

    public void setDifferenceAmount(BigDecimal differenceAmount) {
        this.differenceAmount = differenceAmount;
    }

    public BigDecimal getSfRefundAmount() {
        return sfRefundAmount;
    }

    public void setSfRefundAmount(BigDecimal sfRefundAmount) {
        this.sfRefundAmount = sfRefundAmount;
    }

    public BigDecimal getCpnsPmtAomount() {
        return cpnsPmtAomount;
    }

    public void setCpnsPmtAomount(BigDecimal cpnsPmtAomount) {
        this.cpnsPmtAomount = cpnsPmtAomount;
    }

    public BigDecimal getSpecialDisamount() {
        return specialDisamount;
    }

    public void setSpecialDisamount(BigDecimal specialDisamount) {
        this.specialDisamount = specialDisamount;
    }

    public BigDecimal getPlatPmtAmount() {
        return platPmtAmount;
    }

    public void setPlatPmtAmount(BigDecimal platPmtAmount) {
        this.platPmtAmount = platPmtAmount;
    }

    public String getPromotOrderType() {
        return promotOrderType;
    }

    public void setPromotOrderType(String promotOrderType) {
        this.promotOrderType = promotOrderType;
    }

    public String getPurchaseType() {
        return purchaseType;
    }

    public void setPurchaseType(String purchaseType) {
        this.purchaseType = purchaseType;
    }

    public String getSalesmanPhone() {
        return salesmanPhone;
    }

    public void setSalesmanPhone(String salesmanPhone) {
        this.salesmanPhone = salesmanPhone;
    }

    public String getVenName() {
        return venName;
    }

    public void setVenName(String venName) {
        this.venName = venName;
    }

    public String getPrintBatch() {
        return printBatch;
    }

    public void setPrintBatch(String printBatch) {
        this.printBatch = printBatch;
    }

    public String getCaPhone() {
        return caPhone;
    }

    public void setCaPhone(String caPhone) {
        this.caPhone = caPhone;
    }

    public String getCaStoreName() {
        return caStoreName;
    }

    public void setCaStoreName(String caStoreName) {
        this.caStoreName = caStoreName;
    }

    public String getOrderRemark() {
        return orderRemark;
    }

    public void setOrderRemark(String orderRemark) {
        this.orderRemark = orderRemark;
    }

    private String caCityId;
    private String caProvinceId;

    private Integer confirmSendNum;
    private BigDecimal epayReceAmt;


    public BigDecimal getEpayReceAmt() {

        return epayReceAmt;
    }

    public void setEpayReceAmt(BigDecimal epayReceAmt) {

        this.epayReceAmt = epayReceAmt;
    }

    public Integer getConfirmSendNum() {

        return confirmSendNum;
    }

    public void setConfirmSendNum(Integer confirmSendNum) {

        this.confirmSendNum = confirmSendNum;
    }

    public String getOrderId() {

        return orderId;
    }

    public void setOrderId(String orderId) {

        this.orderId = orderId;
    }

    public String getCreateDate() {

        return createDate;
    }

    public void setCreateDate(String createDate) {

        this.createDate = createDate;
    }

    public String getOrderStatus() {

        return orderStatus;
    }

    public void setOrderStatus(String orderStatus) {

        this.orderStatus = orderStatus;
    }

    public String getOrderSource() {

        return orderSource;
    }

    public void setOrderSource(String orderSource) {

        this.orderSource = orderSource;
    }

    public String getLoginAccount() {

        return loginAccount;
    }

    public void setLoginAccount(String loginAccount) {

        this.loginAccount = loginAccount;
    }

    public String getCaConsignee() {

        return caConsignee;
    }

    public void setCaConsignee(String caConsignee) {

        this.caConsignee = caConsignee;
    }

    public String getCaArea() {

        return caArea;
    }

    public void setCaArea(String caArea) {

        this.caArea = caArea;
    }

    public String getCaStreet() {

        return caStreet;
    }

    public void setCaStreet(String caStreet) {

        this.caStreet = caStreet;
    }

    public String getSalesmanName() {

        return salesmanName;
    }

    public void setSalesmanName(String salesmanName) {

        this.salesmanName = salesmanName;
    }

    public String getPayType() {

        return payType;
    }

    public void setPayType(String payType) {

        this.payType = payType;
    }

    public String getPayStatus() {

        return payStatus;
    }

    public void setPayStatus(String payStatus) {

        this.payStatus = payStatus;
    }

    public String getPayTime() {

        return payTime;
    }

    public void setPayTime(String payTime) {

        this.payTime = payTime;
    }

    public BigDecimal getTotalAmount() {

        return totalAmount;
    }

    public void setTotalAmount(BigDecimal totalAmount) {

        this.totalAmount = totalAmount;
    }

    public BigDecimal getGoodsAmount() {

        return goodsAmount;
    }

    public void setGoodsAmount(BigDecimal goodsAmount) {

        this.goodsAmount = goodsAmount;
    }

    public BigDecimal getFreAmount() {
        if (null == freAmount) {
            return new BigDecimal("0");
        }
        return freAmount;
    }

    public void setFreAmount(BigDecimal freAmount) {

        this.freAmount = freAmount;
    }

    public BigDecimal getPmtAmount() {
        if (null == pmtAmount) {
            return new BigDecimal("0");
        }
        return pmtAmount;
    }

    public void setPmtAmount(BigDecimal pmtAmount) {

        this.pmtAmount = pmtAmount;
    }

    public BigDecimal getPayAbleAmount() {
        if (null == payAbleAmount) {
            return new BigDecimal("0");
        }
        return payAbleAmount;
    }

    public void setPayAbleAmount(BigDecimal payAbleAmount) {

        this.payAbleAmount = payAbleAmount;
    }

    public BigDecimal getRefundAmount() {
        if (null == refundAmount) {
            return new BigDecimal("0");
        }
        return refundAmount;
    }

    public void setRefundAmount(BigDecimal refundAmount) {

        this.refundAmount = refundAmount;
    }

    public String getStoreName() {

        return storeName;
    }

    public void setStoreName(String storeName) {

        this.storeName = storeName;
    }

    public String getLogtsNumber() {

        return logtsNumber;
    }

    public void setLogtsNumber(String logtsNumber) {

        this.logtsNumber = logtsNumber;
    }

    public String getLogtsCompany() {

        return logtsCompany;
    }

    public void setLogtsCompany(String logtsCompany) {

        this.logtsCompany = logtsCompany;
    }

    public String getLogtsStatus() {

        return logtsStatus;
    }

    public void setLogtsStatus(String logtsStatus) {

        this.logtsStatus = logtsStatus;
    }

    public String getPrintStatus() {

        return printStatus;
    }

    public void setPrintStatus(String printStatus) {

        this.printStatus = printStatus;
    }

    public String getShipType() {

        return shipType;
    }

    public void setShipType(String shipType) {

        this.shipType = shipType;
    }

    public String getCustMagName() {

        return custMagName;
    }

    public void setCustMagName(String custMagName) {

        this.custMagName = custMagName;
    }

    public String getCaAreaId() {

        return caAreaId;
    }

    public void setCaAreaId(String caAreaId) {

        this.caAreaId = caAreaId;
    }

    public String getSendTime() {

        return sendTime;
    }

    public void setSendTime(String sendTime) {

        this.sendTime = sendTime;
    }

    public BigDecimal getProPayAmount() {
        if (null == proPayAmount) {
            return new BigDecimal("0");
        }
        return proPayAmount;
    }

    public void setProPayAmount(BigDecimal proPayAmount) {

        this.proPayAmount = proPayAmount;
    }

    public String getPayNumber() {

        return payNumber;
    }

    public void setPayNumber(String payNumber) {

        this.payNumber = payNumber;
    }

    public String getCaCityId() {

        return caCityId;
    }

    public void setCaCityId(String caCityId) {

        this.caCityId = caCityId;
    }

    public String getCaProvinceId() {

        return caProvinceId;
    }

    public void setCaProvinceId(String caProvinceId) {

        this.caProvinceId = caProvinceId;
    }

    public String getOrderSourceType() {
        return orderSourceType;
    }

    public void setOrderSourceType(String orderSourceType) {
        this.orderSourceType = orderSourceType;
    }
}
